package order

// ROrder 订单详细响应结构
type ROrder struct {
	ID             int                     `json:"id"`
	Uid            uint64                  `json:"uid"`
	ServiceTime    string                  `json:"service_time"`
	Sn             string                  `json:"sn"`
	OrderNo        string                  `json:"order_no"`
	UserCouponID   int                     `json:"user_coupon_id"`
	Coupon         string                  `json:"coupon"`
	Address        string                  `json:"address"`
	Status         int                     `json:"status"`
	StatusText     string                  `json:"status_text"`
	Remark         string                  `json:"remark"`
	PayType        int                     `json:"pay_type"`
	PayTrade       string                  `json:"pay_trade"`
	PayStatus      uint8                   `json:"pay_status"`
	OrderAmount    float64                 `json:"order_amount"`
	PayAmount      float64                 `json:"pay_amount"`
	PayRemark      string                  `json:"pay_remark"`
	IsAppraise     uint8                   `json:"is_appraise"`
	CancelRemark   string                  `json:"cancel_remark"`
	CancelDatetime string                  `json:"cancel_datetime"`
	CreatedAt      string                  `json:"created_at"`
	UpdatedAt      string                  `json:"updated_at"`
	OrderItems     []*ROrderProject        `json:"order_items"`
	OrderEvaluate  []*ROrderEvaluate       `json:"order_evaluate"`
}

// ROrderProject 订单产品响应结构
type ROrderProject struct {
	ID        int     `json:"id"`
	OrderID   uint    `json:"order_id"`
	OrderCode string  `json:"order_code"`
	ProjectID int     `json:"project_id"`
	Project   string  `json:"project"`
	Price     float64 `json:"price"`
	Duration  int     `json:"duration"`
	Count     int     `json:"count"`
}

// ROrderEvaluate 订单评价响应结构
type ROrderEvaluate struct {
	ID      int    `json:"id"`
	OrderID uint64 `json:"order_id"`
	Uid     int    `json:"uid"`
	Star    uint8  `json:"star"`
	Content string `json:"content"`
	Tag     string `json:"tag"`
	IsAnony uint8  `json:"is_anony"`
}

// RLintOrder 订单简要响应结构
type RLintOrder struct {
	ID            int               `json:"id"`
	OrderNo       string            `json:"order_no"`
	Status        int               `json:"status"`
	StatusText    string            `json:"status_text"`
	OrderAmount   float64           `json:"order_amount"`
	CreatedAt     string            `json:"created_at"`
	OrderItems    []*ROrderProject  `json:"order_items"`
	OrderEvaluate []*ROrderEvaluate `json:"order_evaluate"`
}
